XFIG
Section: User Commands (1)
Updated: Release 2.1(.7) (Protocol 2.1)
Index
Return to Main Contents
NAME
xfig - Facility for Interactive Generation of figures under X11
SYNOPSIS
xfig
[options]
[file]
DESCRIPTION
Xfig
is a menu-driven tool that allows the user to draw and manipulate objects
interactively in an X window.
It runs under X version 11
release 4 or higher
and requires a two- or three-button mouse.
file
specifies the name of a file to be edited. The description of objects in
the file will be read at the start of xfig.
When using a two-button mouse
use the <Meta> key and the right button at the same time to effect
the action of the middle button.
The TransFig package is used to print or export the output from xfig.
Note for previous xfig users:
The f2p and f2ps translators have been phased out
because the TransFig package from Micah Beck is a more general
purpose translator for more graphics languages.
The TransFig package can be used as a back-end processor to xfig
to produce various types of output:
- LaTeX - 12
-
fig2dev -L latex translates xfig to LaTeX
picture environment commands which can be
processed along with other
LaTeX
commands.
- Postscript -
-
fig2dev -L ps produces a PostScript output.
- Pic -
-
fig2dev -L pic produces a pic output.
- PiCTeX -
-
fig2dev -L pictex produces
PiCTeX
output.
This contains macros that can be used with the
PiCTeX
environment under
TeX
or
LaTeX.
- Others -
-
fig2dev has options for these other languages:
box,
epic,
eepic,
and eepicemu.
The TransFig package is available via anonymous ftp from
export.lcs.mit.edu in /contrib/R5fixes/transfig-fixes/transfig.2.1.X.tar.Z,
where the X is the current patchlevel.
Note: TransFig versions 2.1.4 and later support color
output for PostScript.
OPTIONS
- -L[andscape]
-
Make xfig come up in landscape mode (10" x 8"). This is the default.
- -P[ortrait]
-
Make xfig come up in portrait mode (8" x 9").
- -bg color
-
Use color as the background color for the canvas and buttons.
- -bol[d] font
-
Cause the font used for displaying confirmation messages to be font
(default = 8x13bold).
- -bu[tton] font
-
Cause the font used for most buttons to be font (default = 6x13).
- -de[bug]
-
Turn on debugging mode. Prints various debugging messages like font names etc.
- -e[xportLanguage] language
-
Specifies the language to be used for when exporting a fig file.
Choices are:
Name | Language
|
|
box | LaTeX box (figure boundary)
|
latex | LaTeX picture
|
epic | LaTeX picture + epic macros
|
eepic | LaTeX picture + eepic macros
|
eepicemu | LaTeX picture + eepicemu macros
|
pictex | PiCTeX macros
|
eps | Encapuslated Postscript
|
ps | Postscript
|
pstex | Combined PS/LaTeX (PS part)
|
pstex_t | Combined PS/LaTeX (LaTeX part)
|
textyl | Textyl special commands
|
tpic | TPIC
|
pic | PIC
|
xbm | X11 Bitmap
|
- -fg color
-
Use color as the foreground color and default color for objects.
- -fl[ushleft]
-
Set the print option to print the figure flush left.
The default is to center the figure on the page.
- -geom[etry] WxH+X+Y
-
Specifies the geometry for Fig application.
- -iconG[eometry] +X+Y
-
Specifies the position for the icon.
- -inc[hes]
-
Make inches the unit of choice (default).
- -me[tric]
-
Make centimeters the unit of choice.
After xfig is started you may change the units from metric to
imperial or vice versa from a popup menu available by pressing mouse
button 3 in the units box where the two rulers meet.
- -internalBW width
-
Use lines of width width between all buttons and panels (default = 1).
- -inv[verse]
-
Use inverse video (white on black).
- -k[eyFile] compose-key-file
-
Use compose-key-file instead of CompKeyDB for compose (meta) key
database. If there are no "/"s in the name, the file must reside in the xfig
library directory, $XFIGLIBDIR, usually /usr/local/lib/X11/xfig.
If there are any "/"s in the name it is taken as is (not relative
to $XFIGLIBDIR).
If there is a leading "~/" in the string then the ~ is expanded to the
user's home directory.
- -lat[exfonts]
-
Start xfig with LaTeX font selection. Normally, the PostScript
fonts are available as the default. This flag selects the LaTeX
fonts to start.
- -le[ft]
-
Change the position of the side panel window to the left of the canvas window.
- -mo[nochrome]
-
Use black and white only.
- -nor[mal] font
-
Cause the font used for the message panel and ruler numbers to be font.
This font is also used on the canvas when the selected font is not available
in an X11 font (default = fixed).
- -not[rack]
-
Turn off cursor (mouse) tracking arrows.
- -ph[eight] units
-
Make xfig come up units high (where units are either cm or in).
- -pw[idth] units
-
Make xfig come up units wide (where units are either cm or in).
- -ri[ght]
-
Change the position of the side panel window to the right of the canvas window
(default: left).
- -sc[alablefonts]
-
Allows use of the X11R5 scalable fonts.
- -nosc[alablefonts]
-
Disables use of the X11R5 scalable fonts. You might want to use this for
debugging.
- -sh[owallbuttons]
-
Show all the xfig indicator buttons instead of only those relevant
to the current drawing mode. Normally, the buttons line width,
area-fill, grid mode, text size, etc. are only visible when
they are relevant to the current drawing mode.
The -showallbuttons option makes all
of the indicator buttons visible at all times. This takes up more screen
real estate, but allows the user to see all settable parameters.
- -sp[ecialtext]
-
Start xfig with the special text mode for text objects.
- -startf[ontsize] pointsize
-
Set the default font size for text objects (default = 12pt).
- -startl[atexFont] font
-
Set the starting font name for LaTeX fonts.
- -startp[sFont] font
-
Set the starting font name for Postscript fonts.
- -te[xtoutline]
-
Specifies that xfig will draw a red (on color machines) outline
of the "actual" bounding box of text objects.
This is mostly useful for determining what rotated text will look like
since xfig doesn't rotate the text (other than 0, 90, 180, or
270 degrees) on the canvas.
- -tr[ack]
-
Turn on cursor (mouse) tracking arrows (default).
- -users[cale] scale
-
Set the multiplier for displayed line lengths etc. This factor is multiplied
by the actual length, radius or diameter of the object currently
being drawn on the canvas. It is useful for making scale drawings, where
e.g. 1 inch = 1 foot (userscale = 12.0) or 1cm = 1m (userscale = 100.0).
- -useru[nit] units
-
The units string is printed with the length information when drawing objects.
For example if the userscale = 1.0 and the userunit = ft
then a line which is 3 inches long on the canvas would be displayed as
"length = 3 ft" when it is being drawn.
After xfig is started you may change the userscale
and the userunit from a popup menu available by pressing mouse
button 3 in the units box where the two rulers meet.
GRAPHICAL OBJECTS
The objects in xfig are divided into primitive objects and
compound objects. The primitive objects are: ARC, CIRCLE,
CLOSED SPLINE, ELLIPSE, POLYLINE, POLYGON,
ENCAPSULATED POSTSCRIPT, BOX, ARC-BOX, SPLINE,
and TEXT.
A primitive object can be moved, rotated, flipped vertically or horizontally,
scaled, copied, aligned within a compound object or erased.
The TEXT primitive may not be flipped. It may be rotated but only the markers
show the rotation (on-screen) for angles other than 0, 90, 180 and 270 degrees.
Text IS rotated on PostScript output.
The attributes of any primitive object can be edited using a popup
panel (discussed below), so you can, for instance, set the position
of an object manually.
A compound object is composed of primitive objects. The primitive objects
that constitute a compound can not be individually modified, but they can
be manipulated as an entity; a compound can be moved, rotated, flipped
vertically or horizontally, scaled, copied or erased. A compound that
contains any boxes or arc-boxes may only be rotated by 90 degrees.
Objects may overlap other objects according to their "depth". Objects with
larger depth number are obscured by objects with smaller depth.
Regular polygons may be created using a special drawing mode, but a
general POLYGON is created as a result, which may then be modified, i.e.
the individual vertices may be moved if desired.
DISPLAY WINDOWS
Ten regions comprise the display area of xfig: the
command region, top ruler, side ruler, drawing mode region,
editing mode region, filename region, message region,
mouse function indicator region and canvas region,
and indicator region with buttons to set and show current line thickness,
line style, color, area-fill gray color and several other settings.
(The mouse function indicator region was inspired by the UPS
debugger from the University of Kent.)
The drawing and editing mode regions may be placed (together) to the left or
right of the the canvas window (default: left).
COMMAND PANEL FUNCTIONS
- Quit
-
Exit from xfig, discarding the figure. If the figure has been modified and
not saved, the user will be asked to
confirm the action, by clicking mouse button 1 on a confirm/cancel popup menu.
- Delete ALL
-
Delete all objects from the canvas window (may be undone).
- Undo
-
Undo the last object creation, deletion or modification.
- Redraw
-
Redraw the canvas.
- Paste
-
Paste the object previously copied into the cut/paste file into the current
figure (at its original position).
- File
-
Pressing mouse button 3 on this button invokes Save function without
popping up the file panel.
Mouse button 1 or <Meta>f pops up a panel which contains several
file-related functions:
- Current Filename
-
This is read-only AsciiTextWidget which contains the filename that will be used
to write output to a file if there is no name specified in the
Filename panel.
- Filename
-
This is an editable AsciiTextWidget which contains the filename selected
either by clicking on a filename from the Alternatives list or
by typing a name in directly.
Pressing return in the Filename window will Load the file and copy
the name to the Current Filename widget.
- (File) Alternatives
-
Pressing mouse button 1 on a filename in the file alternatives
window will select that file by copying the filename into Filename window.
Pressing return in this window will Load the file specified in the
Filename window (if any) or the Current Filename widget.
- Filename Mask
-
A wildcard mask may be typed into this editable AsciiTextWidget to restrict
the search of filenames to a subset ala the ls command.
Pressing return in this window will automatically
rescan the current directory.
This string may be set by setting the X toolkit resource
*file_panel*mask*string.
- Current Directory
-
This is an editable AsciiTextWidget which shows the current directory.
It may be modified by the user to manually set a directory name. When
return is pressed in this window the directory specified is scanned for
files matching the Filenamemask, if any.
The ~ (tilde) character may be used to specify a user's home directory, ala
unix shell tilde expansion.
- (Directory) Alternatives
-
Pressing mouse button 1 on a directory name in the directory
alternatives list will do a "change directory" to that directory.
Pressing mouse button 3 in either the file or
Directory Alternatives window will do a "change directory" to the
parent directory.
- Home
-
Pressing this button will change the directory to the $HOME directory
of the user.
- Rescan
-
Pressing this button or <Meta>r will rescan the
current directory.
- Cancel
-
Pressing this button or <Meta>c will pop down the File panel
without making any changes to the directory or file name.
- Save
-
Pressing this button or <Meta>s will save the current contents of the
canvas in the file specified in the
Filename window if any, or the name specified in the
Current Filename if the former is empty.
If the file already exists a confirmation popup menu will appear
asking the user to confirm or cancel the save.
If there is a filename in the Filename window it is copied to the
Current Filename window.
The current Export directory is updated to the current File directory when
Save is pressed.
- Load
-
Pressing this button or <Meta>l will clear the canvas of any
current figure and read the figure from the filename specified
in the Filename menu item if any, or the name
specified in the Current Filename if the former is empty.
If there is a figure currently on the canvas and any modifications
have been made to it and not saved, a popup query
window will first appear asking if the user wishes to discard the current
figure or cancel the Load operation.
The current Export directory is updated to the current File directory when
Load is pressed.
A popup message window will appear and diagnostic messages will be written
if xfig changes any "illegal" object values to legal values. For example,
older versions of xfig were lax about initializing unused parts such as
depth, and would produce very large, random values.
Xfig now will "clean up" bad values and inform you when it does so.
Also, if you read in an older file format, xfig will inform you that
it is converting it to the current format for that version of xfig.
This window can be popped down by clicking the mouse button on the
Dismiss button.
- Merge Read
-
Pressing this button or <Meta>r will read the figure from the filename
specified in the Filename window if any, or the name
specified in the Current Filename if the former is empty,
and merge it with the figure already shown on the canvas.
See Load above for a description of the popup message window.
- Export
-
Will let you export the figure to an output file in one of several formats.
Pressing mouse button 3 on this button invokes Export function without
popping up the export panel.
Mouse button 1 or <Meta>e pops up a directory browser widget and
a menu with several export-related functions:
- Magnification
-
This is an editable AsciiTextWidget which contains the magnification to use
when translating figure to the output language. The default is 100%.
- Orientation
-
This button will toggle the output orientation between Landscape (horizontal)
and Portrait (vertical). The default orientation is the same as the mode
that xfig was started with.
- Justification
-
This window will only be sensitive when the language selected is "ps" (PostScript).
You may choose that the figure is flush left or centered in the
output file.
- Language
-
The translation language to use for xfig output when output is
directed to a file. The default is PostScript.
The figure may be saved as an X11 bitmap by choosing Xbitmap as the
output language.
The bitmap is created from the figure, the size of which is determined
by the enclosing rectangle of all the figure plus a small border.
- Default Output Filename
-
This is read-only AsciiTextWidget which contains the filename that will be used
to write output to a file if there is no name specified in Output File.
The default is the figure name plus an extension that reflects the output
language used, e.g. myfigure.ps if PostScript is the current language used.
If the file already exists a confirmation popup menu will appear
asking the user to confirm or cancel the save.
- Output Filename
-
This is an editable AsciiTextWidget which contains the filename to use
to write output to a file.
Pressing return in this window will Export the file and copy
the name to the Default Output Filename widget.
If the file already exists a confirmation popup menu will appear
asking the user to confirm or cancel the save.
- (File) Alternatives
-
Pressing mouse button 1 on a filename in the file alternatives
window will select that file by copying the filename into Filename window.
Pressing return in this window will Export the file and copy
the name to the Default Output Filename widget.
- Filename Mask
-
A wildcard mask may be typed into this editable AsciiTextWidget to restrict
the search of filenames to a subset ala the ls command.
Pressing return in this window will automatically
rescan the current directory.
This string may be set by setting the X toolkit resource
*export_panel*mask*string.
- Current Directory
-
This is an editable AsciiTextWidget which shows the current directory.
It may be modified by the user to manually set a directory name. When
return is pressed in this window the directory specified is scanned for
files matching the Filenamemask, if any.
It is automatically updated
to follow the current File directory when a File Load or Save is done.
The ~ (tilde) character may be used to specify a user's home directory, ala
unix shell tilde expansion.
- (Directory) Alternatives
-
Pressing mouse button 1 on a directory name in the directory
alternatives list will do a "change directory" to that directory.
Pressing mouse button 3 in either the file or
Directory Alternatives window will do a "change directory" to the
parent directory.
- Home
-
Pressing this button will change the directory to the $HOME directory
of the user.
- Rescan
-
Pressing this button or <Meta>r will rescan the current directory.
- Cancel
-
Pressing this button or <Meta>c will pop down the Export menu
without doing any print operation.
- Export
-
Pressing this button or <Meta>e will write (export) the figure
to the file using the selected language.
If the file already exists, a confirmation window will popup to ask the
user to confirm the write or cancel.
Pressing return in the Output Filename window will also Export the file.
- Print
-
Pressing mouse button 3 on this button invokes Print to Printer function
without popping up the print panel. Pressing the Shift key and
mouse button 3 invokes the Print to Batch function.
Pressing mouse button 1 or <Meta>p pops up a menu with several
print-related functions:
- Magnification
-
This is an AsciiTextWidget which contains the magnification to use
when translating figure to the output language.
- Orientation
-
This button will toggle the output orientation between Landscape (horizontal)
and Portrait (vertical). The default orientation is the same as the mode
that xfig was started with.
- Justification
-
This button will bring up a sub-menu from which you may choose
center or flush left to justify the figure on the page. The
default is flush left.
- Printer
-
This is an AsciiTextWidget which contains the printer to
use if output is directed to a printer. The name of the printer may
be set setting the X toolkit resource *printer*string.
If no resource is set, the environment variable PRINTER is used.
- Print Job Params
-
This is an AsciiTextWidget which into which you may put any extra
command-line parameters that your lpr or lp program needs for printing.
- Figures in batch
-
This indicator shows how many figures have been put in the batch file
for printing
- Dismiss
-
Pressing this button or <Meta>c will pop down the Print menu.
- Print FIGURE/BATCH to Printer
-
-
Pressing this button or <Meta>p will send the current figure
(or the batch file if it is has any figures in it) to the printer,
by passing it through fig2dev to convert it to PostScript
then to the unix lpr (on BSD equivalent Unixes)
or lp (on SYSV systems) program. If the batch file is printed by this
button then it is removed after printing.
The message in the button changes to reflect whether the batch file
will be printed (when there are any figures in the batch file)
or the current figure.
Note that the figure that is printed is what you see on the canvas,
not necessarily the figure file. I.e., if you haven't saved the figure
since the last changes, the figure from the canvas is printed.
Xfig writes the figure to a temporary file to do this.
The name of the file is XFIGTMPDIR/xfig-printPID, where
XFIGTMPDIR is the value of the environment variable by that name and
PID is the process ID of xfig. If the environment variable
XFIGTMPDIR is empty or not set, the /tmp directory is used.
Print FIGURE to Batch
Pressing this button or <Meta>b will append the figure (in PostScript form)
to a batch file.
The Print to Printer button will send the batch file to the printer.
- Clear Batch
-
Pressing this button or <Meta>x will erase the accumulated figures from
the batch file.
INDICATOR PANEL COMMAND DESCRIPTIONS
The indicator panel contains buttons to set certain drawing parameters
such as line thickness, canvas grid, rotation angle etc.
All of the buttons use the same mouse buttons for setting values.
Pressing mouse button 1 on the indicator will pop up a panel
in which either a value may be typed (e.g. for a line thickness) or the
mouse may be clicked on one of several buttons (e.g. for grid style or
font name). For those that expect a value, pressing return in the value
part of the window will set the new value and pop down the menu.
Pressing mouse button 2 on an indicator will decrement the value
(e.g. for line thickness)
or cycle through the options in one direction (e.g. font names), while pressing
mouse button 3 will increment the value or cycle through the options
in the other direction.
- ZOOM SCALE
-
The canvas zoom scale may be set/increased/decreased with this button.
The zoom scale is displayed within the zoom button. Ruler,
grid and linewidth are scaled, too.
Pressing mouse button 2 will decrease the zoom factor by 1.0 unless it
is less than 1.0 already in which case it will reduce to the nearest 0.25.
Pressing mouse button 3 will increase the zoom factor by 1.0 unless it
is less than 1.0 in which case it will increase it to the nearest 0.25.
Pressing the control key and mouse button 3 together will
set the zoom scale to 1.
The figure may also be zoomed by defining a zoom rectangle by pressing
the control key and mouse button 1 together. This will define one corner
of the zoom rectangle. Move the mouse and click mouse button 1 again to
define the opposite corner of the zoom rectangle.
- GRID MODE
-
With this button the user may select no grid,
1/4 inch (5mm in metric mode) grid or 1/2 inch (10mm) grid.
- POINT POSITION
-
This button controls the coarseness of object placement on the canvas.
The options are exact (on pixel) placement, 1/16 inch (2mm in metric mode), 1/4
inch (5mm) or 1/2 inch (10mm). This allows the user to easily place objects
in horizontal or vertical alignment.
This also restricts which objects may be "picked up" by the mouse when editing.
If a corner of an object is not positioned on the canvas on a multiple
of the point positioning resolution you may not be able to pick it. If this
happens, a black square will temporarily appear above the mouse cursor.
This square will also appear anytime the user tries to pick a nonexistent
object.
- ROTATION ANGLE
-
The rotation angle for rotating objects may be set/increased/decreased
with this button.
Note that not all objects may be rotated, and certain objects
may only be rotated by certain angles.
Pressing mouse button 2 will decrease the angle in steps of 15 degrees,
while mouse button 3 will increase the angle the same amount.
To select other angles, press mouse button 1 and
enter the angle in the popup menu.
- DEPTH
-
The depth at which new objects will be created may be set/increased/decreased
with this button.
- NUMBER OF POLYGON SIDES
-
The number of sides used in creating a REGULAR POLYGON is set with
this button.
- SMART-LINKS MODE
-
This button controls the smart-links mode. When turned on, lines which
link box-like objects together (henceforth called links) are treated
specially when one of the box-like objects is moved.
When set to MOVE mode, the end point of the link which touches
(or is very near) the perimeter of the box is moved with the
box so that the box and the end point remain linked.
When set to SLIDE mode, the end segment of the link slides so
that the box remains linked and the angle of the end segment is maintained.
This is useful for keeping the last segment of a link horizontal or vertical.
(At the moment, this mode only works for the MOVE and COPY
functions and only works for POLYLINE links and box-like objects.
Another limitation at the moment is that if both ends of a link touch
the box being operated on, only one end of the link will be adjusted.)
- VERTICAL ALIGN
-
This sets the vertical alignment mode for the ALIGN button in the
editing mode panel. The choices are no vertical alignment, align to top edge,
middle or bottom edge of compound.
The HORIZONTAL ALIGN and VERTICAL ALIGN indicator settings are
used together to align objects inside a compound or in canvas.
- HORIZONTAL ALIGN
-
This sets the horizontal alignment mode for the ALIGN button in the
editing mode panel. The choices are no horizontal alignment, align to left edge,
middle or right edge of compound.
The HORIZONTAL ALIGN and VERTICAL ALIGN indicator settings are
used together to align objects inside a compound or in canvas.
- ANGLE GEOMETRY
-
The following settings are available to restrict the drawing angle of line
segments in POLYLINES, POLYGONS and SPLINES.
- UNRESTRICTED
-
Allow lines to be drawn with any slope. This is the default setting.
- LATEX LINE
-
Allow lines to be drawn only at slopes which can be handled by LaTeX picture
environment lines: slope = x/y, where x,y are integers in the range [-6,6].
- LATEX VECTOR
-
Allow lines to be drawn only at slopes which can be handled by LaTeX picture
environment vectors: slope = x/y, where x,y are integers in the range [-4,4].
- MANHATTAN-MOUNTAIN
-
Allow lines to be drawn in the horizontal, vertical or diagonal direction only.
- MANHATTAN
-
Enforce drawing of lines in the horizontal and vertical direction only.
The name Manhattan comes from the horizontal/vertical look of the Manhattan
(New York City) skyline.
- MOUNTAIN
-
Enforce drawing of only diagonal lines.
The name comes from the pointed shape of mountains.
- FILL STYLE
-
This button allows the user to select the area fill darkness (grey scale)
for all objects except TEXT and ENCAPSULATED POSTSCRIPT,
or to turn off area fill altogether.
- COLOR
-
The user may select one of eight predefined colors to draw with, or select
that the default (-fg) color is to be used. The eight colors are black,
blue, green, cyan, red, magenta, yellow and white. Note that TransFig
versions 2.1.4 and later support color output for PostScript.
On monochrome screens the objects are created with the selected color,
but black is used to draw the objects on the canvas.
- LINE WIDTH
-
The width of lines may be selected with this button. Zero width lines may be
drawn for the purpose of having filled areas without outlines.
- LINE STYLE
-
The choices for line style are solid, dashed and dotted. Once created,
a dashed or dotted line may be edited to change the length of dashes
or the spacing of dots respectively.
The dash length and dot gap can be changed from the default
using the popup menu.
- BOX CURVE
-
The radius of the corners on ARC-BOX objects may be set with this
button.
- ARROW MODE
-
This button selects the auto-arrow mode for drawing lines. The options are
no arrow heads, backward-pointing arrow head, forward-pointing
arrow head or both. If one or both arrow head modes are turned on, then
arrow heads are automatically drawn when drawing
POLYLINE, SPLINE or ARC objects.
- TEXT JUSTIFICATION
-
The adjustment of text may be set to left, center or
right justification.
- TEXT SIZE
-
The text size may be set/increased/decreased with this button. The default
is 12 points.
- TEXT STEP
-
The interline spacing of text may be set/increased/decreased with this button.
The number displayed gives the multiple of the font height
that will be placed between lines on hitting <return>. The default
is a factor of 1.2 times the current font size.
- TEXT FONT
-
This button allows a selection of 35 fonts available for most Apple
PostScript printers.
There are two buttons at the top of the menu. The cancel button pops
down the menu without changing the current font. The use latex fonts
will switch the menu to the LaTeX font choices.
When the LaTeX font menu is up, besides a cancel button
there is a button to switch back to the PostScript fonts.
The name of the font is printed in the font itself so that one may see
what that font looks like.
If a corresponding X11 font exists, new text is created
on the canvas using that font.
xfig uses the size of X11 font closest to that selected
by the font size button.
If the X11 font doesn't exist, xfig uses the font
selected by the "-normal" option.
To abort selection of a font, click mouse button 1 on cancel.
- TEXT FLAGS
-
This button displays the current setting of the text flags. You may use
mouse buttons 2 and 3 to step back and forth through the three flag settings:
Hidden, Rigid and Special. To change any of the flags
you must use mouse button 1 to popup a menu from which you may change any
or all of the flags.
The Hidden and Special attributes of text objects are
used with figures that will be incorporated into LaTeX. Please see
the documentation for LaTeX for further information. The default for the
Hidden flag is off.
The default for the Special flag is off unless xfig is started
with the command-line parameter -specialtext (resource specialtext).
The Rigid attribute forces text to remain the same size even if
inside a compound object that is scaled up or down. The default is off.
DRAWING AND EDITING MODE PANELS
Icons in the drawing and editing mode panel windows represent
object manipulation functions,
modes and other drawing or modification aids.
Manipulation functions are selected by positioning the cursor over the icon
representing the desired drawing/editing function and
clicking mouse button 1. The selected icon is highlighted, and
a message describing its function appears in the message window.
The hilighting remains on until another function is selected.
DRAWING MODE PANEL COMMAND DESCRIPTIONS
The drawing mode panel contains buttons used to create the various xfig
objects.
Once the drawing mode is selected, the object is created by moving
the mouse to the point on the canvas where the object is to be placed
and pressing and releasing mouse button 1.
After that the mouse is moved to the second point and
mouse button 1 is again pressed for the next point.
For those objects which may have more than two points (e.g. a line),
mouse button 1 may be pressed for each successive point, and
mouse button 2 must be pressed to finish the object.
To create a single point
using the POLYLINE button, press and release mouse button 2.
For the ARC object, which requires exactly three
points mouse button 1 is used for all three points.
At any time mouse button 3 may be pressed to cancel the
creation of the object.
- ARC
-
Create an arc. Specify three points using mouse button 1. The first and
last points will form the endpoints of the arc and the second specifies
any point on the arc.
- BOX
-
Create rectangular boxes.
Start by clicking mouse button 1 on any corner of the desired box and
finish with the same mouse button on the diagonally opposite corner of
the box.
- ARC-BOX
-
Create rectangular boxes with rounded corners.
Start and finish with mouse button 1 in the same way as BOX.
The radius of the corners is selected by the BOX CURVE button.
- CIRCLE
-
Create circles by specifying their radii or diameters.
Click mouse button 1 on the center of the circle and drag the mouse
until the desired radius or diameter is attained. Click
mouse button 1 again to finish the circle.
- ELLIPSE
-
Create ellipses using the same procedure as for the drawing of circles.
- ENCAPSULATED POSTSCRIPT OBJECT (EPS)
-
Click mouse button 1 on any corner
for the EPS object and finish by clicking mouse button 1
again on the diagonally opposite corner. The EDIT
popup panel will appear and the file name of the EPS object
may be entered. After pressing DONE or APPLY
(see the description of the EDIT panel for the difference between
the DONE and APPLY buttons) the bitmap
part of the EPS object will appear in the box just created. If no
EPS file is available yet or no name is entered or there is no
preview bitmap in the EPS file, pressing DONE
will pop down the edit panel and the word
<empty> or the EPS file name will remain in the EPS box.
Later, when the name of the EPS file is known or the file is available,
you may re-read the EPS file using the popup edit panel and the bitmap
part of the EPS file will replace the name in the box.
If you want the original size of the EPS object, press the
"Use orig size" button and the eps bitmap will enlarge or shrink to
the size specified in the preview bitmap of the EPS file.
If you want the EPS object to be approximately the size of
the rectangle specified with the mouse but want the aspect ratio
to be same as the original, press either "Shrink to orig" or
"Enlarge to orig" buttons. You must press the APPLY button to
see these effects.
If the EPS file has no preview bitmap, but has a %%BoundingBox
comment and xfig has been compiled xfig with the -DGSBIT flag and
you have gs (ghostscript) version 2.4 or newer then xfig will
call gs to produce a preview bitmap on the screen.
Ghostscript is available from prep.ai.mit.edu.
- INTERPOLATED SPLINE
-
Create (cubic spline) spline objects.
Enter control vectors in the same way as for creation of a
POLYLINE object.
At least three points (two control vectors) must be entered.
The spline will pass through the entered points.
- POLYLINE
-
Create polylines (line segments connecting a sequence of points).
Enter points by clicking mouse button 1 at the desired positions on the
canvas window. Click mouse button 2 to finish.
- POLYGON
-
Same as POLYLINE
except that a line segment is drawn connecting the first and last
points entered.
- REGULAR POLYGON
-
The number of sides is first selected with the NUM SIDES
button in the indicator panel. Then mouse button 1 is clicked on
the center and the mouse dragged to the desired size. The object
may be rotated as it is being created by moving the mouse up or down
relative to the starting point. Click mouse button 1 to finish.
- CLOSED INTERPOLATED SPLINE
-
Create closed or periodic splines. The function is similar
to POLYGON except that a closed interpolated spline is drawn.
The spline will pass through the points (knots).
- CLOSED SPLINE
-
Create closed or periodic spline objects.
The function is similar to POLYGON
except that a closed spline will be drawn instead of polygon.
The entered points are just control points; i.e. the spline will
not pass any of these points.
- SPLINE
-
Create (quadratic spline) spline objects.
Enter control vectors in the same way as for creation of a
POLYLINE object.
At least three points (two control vectors) must be entered.
The spline will only pass through the two end points.
- TEXT
-
Create text strings. Click mouse button 1 at the desired position on
the canvas window, then enter text from the keyboard. Text may be pasted
from the PRIMARY cut buffer (xterm cut/paste buffer) by pressing the
F18 function key (the Paste key on Sun keyboards)
or any key/button defined in the translation
table for the canvas. See the default Fig.ad file for example.
Text is drawn using the current font, font size and justification settings.
A DEL or ^H (backspace) will delete a character, while a ^X will
erase the entire line.
Finish by clicking mouse button 2 or typing the <return> key.
If <return> is used, the text pointer automatically moves to the next "line",
a distance of the font height times the value in the TEXT STEP button,
and text input mode is re-entered. To finish text fully, click
mouse button 2 or choose any panel button that changes
modes (e.g. box, save, etc).
To edit text, click on an existing text string with mouse button 1.
Insertion of characters will take place at that point. Or, use the popup
EDIT mode to modify the text.
Eight-bit characters may be entered using the meta (compose) key.
For example, to create an "a umlaut", hold down the meta key while pressing
the letter "a", then press " (quote). To create a "c cedilla", use <meta>c
followed by comma.
The following is a list of all special characters available using the meta key:
Keys Character Name
!! upside-down exclamation point
?? upside-down question mark
C/ cent sign
L- British pound
OX currency
Y- yen
__ broken vertical bar
SO section
"" dieresis
CO copyright
RO registered trademark
_a ordfeminine
_o ordmasculine
<< guillemotleft
>> guillemotright
-| notsign
-- hyphen
+- plusminus
^- macron
^* degree
^. periodcentered
^1 onesuperior
^2 twosuperior
^3 threesuperior
14 onequarter
12 onehalf
34 threequarters
\\ acute
** multiply
-: division
/u mu
P! paragraph
A` A accent grave
A' A accent acute
A^ A accent circumflex
A~ A accent tilde
A" A dieresis
A* A ring
AE AE
a` a accent grave
a' a accent acute
a^ a accent circumflex
a~ a accent tilde
a" a dieresis
a* a ring
ae ae
C, C cedilla
c, c cedilla
D- Eth
d- eth
E` E accent grave
E' E accent acute
E^ E accent circumflex
E" E dieresis
e` e accent grave
e' e accent acute
e^ e accent circumflex
e" e dieresis
I` I accent grave
I' I accent acute
I^ I accent circumflex
I" I accent dieresis
i` i accent grave
i' i accent acute
i^ i accent circumflex
i" i dieresis
N~ N tilde
n~ n tilde
O` O accent grave
O' O accent acute
O^ O accent circumflex
O~ O accent tilde
O" O dieresis
O/ O slash
o` o accent grave
o/ o accent acute
o^ o accent circumflex
o~ o accent tilde
o" o dieresis
o/ o slash
P| Thorn
p| thorn
ss German ss (s-zed)
U` U accent grave
U' U accent acute
U^ U accent circumflex
U" U dieresis
u` u accent grave
u' u accent acute
u^ u accent circumflex
u" u dieresis
Y' Y accent acute
y' y accent acute
y" y dieresis
EDITING MODE PANEL COMMAND DESCRIPTIONS
When a button in the editing mode panel is pressed, any
objects that may be affected by that editing operation will show their
corner markers. Only those objects may be affected by the particular
edit mode. In cases where two edit modes exist for one button, it
may be that the corner markers will appear for objects that may be
affected by one button but not the other.
SELECTING OBJECTS
When multiple objects have points in common, e.g. two boxes that
touch at one corner, only one object can be selected by clicking on
that point. To select other objects, hold down the shift key while
pressing mouse button 1: the markers of one object will be
temporarily highlighted. By repeatedly clicking mouse button 1 while
holding down the shift key, it is possible to cycle through all candidates for
selection at that point. To perform the selected action, e.g.
deleting one box, click on the point without holding down the
shift key. The operation will be performed on the highlighted object.
Note:
If the mouse is not clicked near enough to an object marker or for whatever
reason xfig cannot "find" the object the user is trying to select,
a black square will temporarily appear above the mouse cursor.
- GLUE COMPOUND
-
Compound objects are created by first tagging the objects to be compounded
and then pressing mouse button 3 to group the tagged
objects into a compound object. Single objects are tagged by clicking
on them with mouse button 1. A number of objects can be tagged at
once by using mouse button 2 to define the upper-left and
lower-right corners of a region enclosing the objects.
Tagged objects are shown with highlighted markers.
Tagged objects which are selected (see the SELECTING OBJECTS section above)
will be temporarily unhighlighted.
There is currently no special command to tag or untag all of the objects
within a figure. You can untag all of the objects by changing from
GLUE mode to some other mode (apart from BREAK) and back again.
- BREAK COMPOUND
-
Break a compound object to allow manipulation of its component parts.
Click mouse button 1 on one of the corner markers of the compound
object or along one of the imaginary lines defining the compound box.
Clicking with mouse button 2 will achieve the same effect
but will also tag the component parts (although you will not see the
tags until you change to the GLUE mode). You can use this feature
to easily alter the objects within a compound.
- SCALE OBJECT
-
Any object may be scaled. If mouse button 1 is pressed on a
BOX or ARC-BOX object, then that object will be scaled
proportionally to its aspect ratio. If mouse button 2 is pressed
on any object, that object will be scaled up or down about its center.
Text may only be scaled if inside a compound object and then only if
its RIGID flag is set to NORMAL (using the popup edit panel).
See the TransFig manual for description of text options.
- ALIGN
-
Align objects. Click mouse button 1 to align objects inside a compound object
or mouse button 2 to align all objects on canvas according to the
setting in the VERTICAL ALIGN and HORIZONTAL ALIGN indicators.
The choices are the cumulative effect of vertically aligning the objects
to the TOP, MIDDLE or BOTTOM edge and horizontally aligning
to the LEFT, MIDDLE or RIGHT edge of the compound.
- MOVE POINT
-
Modify the position of a point of any object except TEXT and
COMPOUND objects.
For unrestrained movement, click mouse button 1 over the desired
point, reposition the point, and click the left button again.
For horizontally or vertically constrained move, click mouse button 2
on the desired point and move either horizontally or vertically.
Notice that once you choose the direction (horizontal or vertical), movement
is constrained in that direction. If, after moving the mouse initially, it
is moved in the other direction a greater distance than the current position
of the mouse relative to the starting point, then that will be the new
constraint direction. In otherwords if you first move the mouse
horizontally one inch (say) then move it vertically
1.3 inches, the direction will switch to vertical until any
horizontal motion exceeds 1.3 inches.
When the object is positioned where desired, click mouse button 1 to
place it if that button was used to start the move (unconstrained),
or mouse button 2 (constrained) if that button was used.
- MOVE
-
Move object. Click mouse button 1 (unconstrained move) or mouse button 2
(constrained move) on any corner marker of the object to be moved.
The horizontal/vertical constrained movement (mouse button 2) works
exactly as described for MOVE POINT.
- ADD POINTS
-
Add points to POLYLINE, POLYGON, SPLINE,
or CLOSED SPLINE objects (points of a BOX can not be added
or deleted). Note that a REGULAR POLYGON is really an ordinary
POLYGON, so adding points to this object is allowed and does NOT keep
the polygon regular.
- COPY / CUT TO CUT BUFFER
-
Copy object to canvas or cut buffer. Click mouse button 1 (unconstrained
copy) or mouse button 2 (constrained copy) on any corner marker of
the object to be copied (for CIRCLE and ELLIPSE
objects, mouse may also be clicked on their circumferences).
The object will be duplicated and then moved exactly as in MOVE.
If mouse button 3 is clicked on an object, that object is copied
to the cut buffer for pasting into this or another figure.
The file used for the cut buffer is called .xfig
in the user's $HOME directory. This allows a user to run two or more
xfig processes and cut/paste objects between them.
If there is no $HOME, a file is created in a temporary directory
called xfigPID where PID is the xfig process ID.
The temporary directory used is specified in the environment variable
XFIGTMPDIR/. If that variable is empty or not set then /tmp is used.
- DELETE POINTS
-
Delete points from POLYLINE, POLYGON, SPLINE,
or CLOSED SPLINE. Objects (points of a BOX or ARC-BOX
can not be added or deleted).
Note that a REGULAR POLYGON is really an ordinary
POLYGON, so deleting points from this object is allowed and does NOT
keep the polygon regular.
- DELETE
-
Click mouse button 1 on an object to delete the object.
Delete a region of the canvas by clicking mouse button 2
and dragging the mouse to define an area of objects to delete.
Clicking mouse button 3 on an object will copy the object
to the cut buffer (see COPY/CUT TO CUT BUFFER above).
- EDIT OBJECT
-
Edit settings for an existing object.
Click mouse button 1 on the object and a pop-up menu will appear
showing existing settings for the object. Some of the menu entries
may be changed by typing new values in the appropriate windows. These
are editable AsciiTextWidgets and allow cut and paste.
Others pop up a sub-menu of multiple choices when pressed and held.
Yet others are buttons which toggle a setting on or off (e.g. arrow
heads on lines).
Press the "done" button to apply the changes to the object and finish.
Press the "apply" button to apply the changes but keep the menu up for
further changes. Press the "cancel" button to cancel the changes and
pop down the menu.
The following table shows which settings are used for the different objects.
Object | Angle | Area | Line | Line | Box | ddDepth | Color | Radius | Text Font/
|
| | Fill | Width | Style | Curve | | | | Just./Size
|
|
Arc | | X | X | X | | X | X | |
|
|
Arc-Box | | X | X | X | X | X | X | |
|
|
Circle | X | X | X | X | | X | X | X |
|
|
Ellipse | X | X | X | X | | X | X | X |
|
|
EPS | | | | | | X | X | |
|
|
Box,Polygon, | | X | X | X | | X | X | |
|
Line,Spline | | | | | | | | |
|
|
Text | +X | | | | | X | X | | X
|
|
+ The angle may be set, but the object will only be rotated on
PostScript output for angles other than 0, 90, 180 and 270 degrees.
dd The depth defines how overlapping objects are displayed. Objects with
a greater depth value are obstructed by objects with smaller depth value.
The maximum depth allowed is 1000.
- UPDATE
-
By pressing mouse button 1 on an object, the current settings for
the indicator buttons (line width, line style, area fill etc.) which
have been selected for update are copied into that object.
When xfig is started, all indicator buttons which are components of objects
are selected for update. To unselect an indicator, click on the update button
and click mouse button 1 on the small button in the upper-right
corner of the indicator. When that indicator is selected the foreground color
(default black) shows. When it is unselected the background color (default white)
shows.
If mouse button 2 is clicked on an object, the settings in the object
that are selected by the indicator buttons are copied into those indicator button
settings. Thus, one may copy selected attributes of one object to another.
- FLIP VERTICALLY
-
Flip the object up/down (mouse button 1) or copy the object and flip it
(mouse button 2). Point to part of the object, click
the appropriate button. That object will be flipped vertically
about that point.
- FLIP HORIZONTALLY
-
Flip the object left/right (mouse button 1) or copy the object and flip it
(mouse button 2). Point to part of the object, click
the appropriate button. That object will be flipped horizontally
about that point.
- ROTATE CLOCKWISE
-
Rotate the object (mouse button 1) or copy and rotate it
(mouse button 2) -N degrees (clockwise), where N is the amount
set in the rotation indicator button. The object is rotated about
the chosen point.
Not all objects can be rotated, and not all can be rotated at arbitrary
angles. For example, BOX, ARC-BOX and EPS objects may
only be rotated by 90 degrees.
Text objects may be rotated, although for angles other than 0, 90, 180
and 270 degrees only the markers are rotated on the screen
because of the limitations of the X11 Window System.
Text IS rotated correctly on PostScript output, however.
- ROTATE COUNTER-CLOCKWISE
-
Rotate the object (mouse button 1) or copy (mouse button 2)
+N degrees (counter-clockwise), where N is the amount set in the rotation
indicator button. The object is rotated about the chosen
point.
- SPLINE <-> POLYLINE
-
Turn POLYGON into a CLOSED INTERPOLATED SPLINE object, or
turn POLYLINE into a INTERPOLATED SPLINE object.
- ADD/DELETE ARROWS
-
Add or delete arrow heads of ARC, POLYLINE or SPLINE
objects. Add an arrow head by clicking mouse button 1 on the
endpoint of the object. Delete an arrow head by clicking
mouse button 2 on the endpoint or arrow head. The length and thickness
of the arrowheads may be modified using the popup edit panel.
PANNING
The figure may be panned by clicking mouse button 1, 2 or 3
in the rulers. Clicking mouse button 1 in the top ruler
will pan the image to left the by 1/2 inch (1cm in metric mode),
adjusted for zoom factor. Clicking mouse button 3 in the top ruler
will pan the image right by the same amount.
By pressing and holding mouse button 2 the user may drag
the ruler by the amount desired, thus panning the image by that amount.
The figure is panned up and down in the same way by clicking the mouse
in the ruler on the right of the canvas. Also, the figure can be returned
to its origin by clicking mouse button 1 in the units
(e.g. cm or in) box.
The arrow keys may also be used to pan the image and the home key to
return the figure to the origin. Also, pressing the Control Key and
mouse button 2 will pan the figure to the origin.
X DEFAULTS
The overall widget name(Class) is xfig(Fig). These
resources correspond to the command line arguments:
Name | Class | Type | Default | Command-line
|
| | | | equivalent
|
|
justify | Justify | boolean | false | -left (false) and
|
| | | | -right (true)
|
landscape | Orientation | boolean | true | -Landscape and
|
| | | | -Portrait
|
pwidth | Width | float | 10(8) | -pwidth
|
pheight | Height | float | 8(9.5) | -pheight
|
trackCursor | Track | boolean | on | -track and -notrack
|
inches | Inches | boolean | true | -inches, -imperial,
|
| | | | -centimeters and
|
| | | | -metric
|
reverseVideo | ReverseVideo | boolean | off | -inverse
|
debug | Debug | boolean | off | -debug
|
latexfonts | Latexfonts | boolean | off | -latexfonts
|
normalFont | NormalFont | string | fixed | -normal
|
boldFont | ButtonFont | string | 8x13bold | -bold
|
startfontsize | StartFontSize | float | 12 | -startfontsize
|
startpsFont | StartpsFont | string | Times-Roman | -startpsFont
|
startlatexFont | StartlatexFont | string | Default | -startlatexFont
|
showallbuttons | ShowAllButtons | boolean | false | -showallbuttons
|
internalborderwidth | InternalBorderWidth | integer | 1 | -internalBW
|
scalablefonts | ScalableFonts | boolean | false | -scalablefonts
|
specialtext | SpecialText | boolean | false | -specialtext
|
monochrome | Monochrome | boolean | false | -monochrome
|
keyFile | KeyFile | string | CompKeyDB | -keyFile
|
exportLanguage | ExportLanguage | string | eps | -exportLanguage
|
flushleft | FlushLeft | boolean | false | -flushleft
|
textoutline | TextOutline | boolean | false | -textoutline
|
userscale | UserScale | float | 1.0 | -userscale
|
userunit | UserUnit | string | in(cm) | -userunit
|
color0 | Color0 | pixel | black |
|
color1 | Color1 | pixel | blue |
|
color2 | Color2 | pixel | green |
|
color3 | Color3 | pixel | cyan |
|
color4 | Color4 | pixel | red |
|
color5 | Color5 | pixel | magenta |
|
color6 | Color6 | pixel | yellow |
|
color7 | Color7 | pixel | white |
|
|
The following are the default keyboard accelerators as distributed
in the Fig.ad app-defaults file:
Keys (Context) | Function
|
(Main xfig panels) |
|
<Meta>q | Quit xfig
|
<Meta>d | Delete all objects from canvas
|
<Meta>u | Undo
|
<Meta>r | Redraw
|
<Meta>t | pasTe xfig cutbuffer onto canvas
|
<Meta>f | popup File menu
|
<Meta>e | popup Export menu
|
<Meta>p | popup Print menu
|
<Meta>l | (re)Load figure from current file
|
<Meta>s | Save figure to current file
|
|
|
(Popup file panel) |
|
<Meta>r | Rescan current directory
|
<Meta>c | Cancel
|
<Meta>l | Load figure
|
<Meta>s | Save figure
|
<Meta>m | Merge read into current figure
|
|
|
(Popup export panel) |
|
<Meta>r | Rescan current dirctory
|
<Meta>c | Cancel
|
<Meta>e | Export figure
|
|
|
(Popup print panel) |
|
<Meta>c | Cancel
|
<Meta>b | print to Batch file
|
<Meta>p | Print to printer
|
<Meta>x | clear batch file
|
WIDGET TREE
Below is the widget structure of xfig.
The widget class name is given first, followed by the widget instance name.
Fig xfig
Form form
Form commands
Command quit
Command delete_all
Command undo
Command redraw
Command paste
Command file
Command export
Command print
Form msg_form
Label file_name
Text message
Box mode_panel
Label label
Command button (one for each of the 16 drawing mode buttons)
Label label
Command button (one for each of the 18 editing mode buttons)
Label topruler
Label canvas
Label unitbox
Label sideruler
Viewport ind_viewport
Core clip
Scrollbar horizontal
Box ind_panel
Form button_form (one for each of the 22 indicator buttons)
Command button
Toggle update (only those indicators that affect creation
of objects have update toggles)
TransientShell xfig_ps_font_menu
Box menu
Form buttons
Command cancel
Command use_latex_fonts
Command pane (one for each of the 35 Postscript font panes)
TransientShell xfig_latex_font_menu
Box menu
Form buttons
Command cancel
Command use_postscript_fonts
Command pane (one for each of the 6 LaTeX font panes)
TransientShell xfig_file_menu
Form file_panel
Label file_status
Label num_objects
Label cur_file_label
Text cur_file_name
Label file_label
Text file_name
Label file_alt_label
Viewport vport
Core clip
Scrollbar vertical
List file_list_panel
Label mask_label
Text mask
Label dir_label
Text dir_name
Label dir_alt_label
Command home
Viewport dirvport
Core clip
Scrollbar vertical
List dir_list_panel
Command rescan
Command cancel
Command save
Command load
Command merge
TransientShell xfig_export_menu
Form export_panel
Label mag_label
Text magnification
Label orient_label
MenuButton orientation
SimpleMenu menu
SmeBSB Portrait
SmeBSB Landscape
Label just_label
MenuButton justify
SimpleMenu menu
SmeBSB Flush left
SmeBSB Centered
Label lang_label
MenuButton language
SimpleMenu menu
SmeBSB LaTeX box (figure boundary)
SmeBSB LaTeX picture
SmeBSB LaTeX picture + epic macros
SmeBSB LaTeX picture + eepic macros
SmeBSB LaTeX picture + eepicemu macros
SmeBSB PiCTeX macros
SmeBSB Encapsulated Postscript
SmeBSB Postscript
SmeBSB Combined PS/LaTeX (PS part)
SmeBSB Combined PS/LaTeX (LaTeX part)
SmeBSB Textyl \special commands
SmeBSB TPIC
SmeBSB PIC
SmeBSB X11 Bitmap
Label export_mode_label
MenuButton export_mode
SimpleMenu menu
SmeBSB Overwrite
SmeBSB Append
Label def_file_label
Label def_file_name
Label out_file_name
Text file
Label file_alt_label
Viewport vport
Core clip
Scrollbar vertical
List file_list_panel
Label mask_label
Text mask
Label dir_label
Text dir_name
Label dir_alt_label
Command home
Viewport dirvport
Core clip
Scrollbar vertical
List dir_list_panel
Command rescan
Command cancel
Command export
TransientShell xfig_print_menu
Form print_panel
Label printer_image
Label mag_label
Text magnification
Label orient_label
MenuButton landscape
SimpleMenu menu
SmeBSB portrait
SmeBSB landscape
Label just_label
MenuButton justify
SimpleMenu menu
SmeBSB flush left
SmeBSB centered
Label print_label
Text printer
Label num_batch_lab
Label num_batch_val
Command dismiss
Command print_batch
Command clear_batch
Command print
TransientShell xfig_file_msg
Form file_msg_panel
Text file_msg_win
Command dismiss
TransientShell query_popup
Form query_form
Label message
Command yes
Command no
Command cancel
TransientShell xfig_set_unit_panel
Form form
Label Unit/Scale settings
Label Ruler Units =
MenuButton Imperial (in)
SimpleMenu menu
SmeBSB Metric (cm)
SmeBSB Imperial (in)
Label Figure units =
MenuButton Ruler units
SimpleMenu menu
SmeBSB Ruler units
SmeBSB User defined
Label user_units
Text Unit/Scale settings
Label Figure scale =
MenuButton User defined
SimpleMenu menu
SmeBSB Unity
SmeBSB User defined
Label scale_factor
Text 1.0
Command cancel
Command set
NOTE: The following is a typical popup edit panel (for ARC-BOX)
The panel will be different for other objects.
TransientShell xfig_edit_panel
Form form
Label POLYLINE:ArcBox
Label image
Command done
Command apply
Command cancel
Label
Label Width =
Text Width =
Label Color =
Text Color =
Label Depth =
Text Depth =
Label Area fill =
MenuButton No fill
SimpleMenu menu
SmeBSB No fill
SmeBSB Filled
Label Fill density % =
Text Fill density % =
Label Line style =
MenuButton Solid Line
SimpleMenu menu
SmeBSB Solid Line
SmeBSB Dashed Line
SmeBSB Dotted Line
Label Dash length/Dot gap =
Text Dash length/Dot gap =
Label Top Left:
Label Top Left:
Text Top Left:
Label Top Left:
Text Top Left:
Label Bottom Right:
Label Bottom Right:
Text Bottom Right:
Label Bottom Right:
Text Bottom Right:
Label Radius =
Text Radius =
BUGS and RESTRICTIONS
Please send bug reports, fixes, new features etc. to:
bvsmith@lbl.gov
(Brian V. Smith)
Not all operations employ smart redrawing of objects which are altered
as a by product of the operation. You may need to use Redraw
in these cases.
Must compile xfig with -DOPENWIN in order to make xfig handle
OpenWindows scalable fonts correctly.
Some servers do not allow bitmaps/pixmaps taller than the screen height
or wider than the screen width. That is why there is a limit on the width
of the top ruler and height of the side ruler. If you need wider/taller
rulers AND your server allows bigger pixmaps, you may define MAX_TOPRULER_WD
and/or MAX_SIDERULER_HT in your Imakefile in the DEFINES line. For example,
to have a maximum top ruler width of 1160 pixels, add
-DMAX_TOPRULER_WD=1160 to your DEFINES line in the Imakefile.
There is a bug in OpenWindows 2.0 which relates to pixmaps in widgets.
You must compile xfig with the -DOPENWIN_BUG option for this problem.
If the image is panned or the xfig window iconified and de-iconified
during the middle of an operation (e.g. while drawing a line), the picture
will be distorted. This can be corrected using Redraw after the
operation is complete.
Rotated text will be displayed horizontally or vertically (i.e. angles
of 0, 90, 180 and 270 degrees) on the screen.
They will be rotated correctly when printed on PostScript output.
Corners of object scaled with point positioning in one of the grid
modes will not always fall on the grid line, but to the closest pixel.
SEE ALSO
Brian W. Kernighan
PIC - A Graphics Language for Typesetting User Manual
fig2dev(1) (TransFig package)
ACKNOWLEDGEMENT
Many thanks goes to Professor Donald E. Fussell who inspired the
creation of this tool.
COPYRIGHT
Original Copyright (c) 1985 by Supoj Sutanthavibul
Permission to use, copy, modify, distribute, and sell this software and its
documentation for any purpose is hereby granted without fee, provided that
the above copyright notice appear in all copies and that both that
copyright notice and this permission notice appear in supporting
documentation. No representations are made about suitability of this
software for any purpose. It is provided "as is" without express or
implied warranty.
PostScript is a trademark of Adobe Systems Incorporated.
FILES
- CompKeyDB - Data base of compose (meta) key sequences for 8-bit characters.
-
Must be installed in $(XFIGLIBDIR) with 'make install', or may be
specified with command line option -keyFile or X toolkit resource keyFile.
See the Imakefile.
- Doc/FORMAT2.1 - Description of Fig file format.
-
- CHANGES - Description of bug fixes/new features.
-
AUTHORS
Many people have contributed to xfig. Here is a list of the people who
have contributed the most (in chronological order):
Original author:
Supoj Sutanthavibul, University of Texas at Austin
The LaTeX line drawing modes were contributed by:
Frank Schmuck, Cornell University
Original X11 port by:
Ken Yap, Rochester
Variable window sizes, cleanup of X11 port, right hand side panel:
Dana Chee, Bellcore
Cleanup of color port to X11 by:
John T. Kohl, MIT
Version 2.0:
Area fill, multiple line thicknesses, multiple fonts and font sizes,
bottom panel, line style/thickness modification of objects by:
Brian V. Smith, Lawrence Berkeley Laboratory
(standard disclaimer applies)
(bvsmith@lbl.gov)
Popup change-object menu by:
Jon Tombs
Frank Schmuck
Zooming and panning functions, shift key select mechanism by:
Dieter Pellkofer
Henning Spruth
Depth feature by:
Mike Lutz
Version 2.1:
Indicator panel, file menu popup, print menu popup,
panning with rulers, mouse function window, regular polygon,
rubberbanding of circles/ellipses, filled splines on canvas,
dashed/dotted splines on canvas, update button,
arbitrary angle rotation of objects, alignment in compound,
object scaling, constrained copy/move, corner markers for compound,
context sensitive corner markers, smarter redraw, undo for compound
and point move for boxes, cancel object creation, point positioning
to three resolutions, TransFig scalable text, hidden text,
special text, save of figure on crash by:
Paul King (king@cs.uq.oz.au)
with help from:
Brian V. Smith (bvsmith@lbl.gov)
and Micah Beck (beck@cs.cornell.edu)
Encapsulated PostScript importing by:
Brian Boyter
Color implementation and pan/zoom with ctrl key/mouse by:
Henning Spruth
International characters by:
Herve Soulard
Directory Browser based on XDir by:
Win Treese, Digital Equipment Corporation
Rotated ellipses by:
James Tough, Dept. of Computer Science, Heriot-Watt University, Scotland
(Vertically) Rotated text by:
Alan Richardson, Space Science Centre, School of MAPS,
University of Sussex
Popup scale menu and dynamic switching between inches and cm by:
Paul King (king@cs.uq.oz.au)
Many bug fixes/cleanups etc. by a host of faithful users
See the CHANGES file for all the credits
Index
- NAME
-
- SYNOPSIS
-
- DESCRIPTION
-
- OPTIONS
-
- GRAPHICAL OBJECTS
-
- DISPLAY WINDOWS
-
- COMMAND PANEL FUNCTIONS
-
- INDICATOR PANEL COMMAND DESCRIPTIONS
-
- DRAWING AND EDITING MODE PANELS
-
- DRAWING MODE PANEL COMMAND DESCRIPTIONS
-
- EDITING MODE PANEL COMMAND DESCRIPTIONS
-
- SELECTING OBJECTS
-
- PANNING
-
- X DEFAULTS
-
- WIDGET TREE
-
- BUGS and RESTRICTIONS
-
- SEE ALSO
-
- ACKNOWLEDGEMENT
-
- COPYRIGHT
-
- FILES
-
- AUTHORS
-
This document was created by
man2html,
using the manual pages.
Time: 02:35:17 GMT, December 05, 2024